#ifndef PANELMOVER_H
#define PANELMOVER_H
#include <QWidget>
#include "../terminalglobals.h"

class QPushButton;

namespace ExecTerminalImplNS
{
    class MoverButton;
    class PanelMover: public QWidget
    {
        Q_OBJECT
    public:
        PanelMover(QWidget * parent);
        
        Position position()const;
        void setPosition(Position ps);
        QPushButton * hideButton()const;
        QPushButton * moveButton()const;

    protected:
        void paintEvent(QPaintEvent *);
        void enterEvent(QEvent *);
        void leaveEvent(QEvent *);
        void resizeEvent(QResizeEvent *);

    protected:
        void updatePixmaps();
        void layoutButtons();
        void updateSize();

    private slots:
        void changePosition();

    private:
        QPixmap theBackgoundPix;
        MoverButton * theHideButton;
        MoverButton * theMoveButton;
        Position thePosition;

    };
}

#endif
